Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

ПАРАЛЕЛЬНЕ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2010
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Паралельні та розподілені обчислення
Група:
КІ-44

Частина тексту файла

Міністерство Освіти і Науки України Національний Університет “Львівська Політехніка” Кафедра ЕОМ  ЗВІТ до лабораторної роботи № 2 з курсу “Паралельні та розподілені обчислення ” Тема: ПАРАЛЕЛЬНЕ ПРЕДСТАВЛЕННЯ АЛГОРИТМІВ. Мета: Вивчити можливості паралельного представлення алгоритмів. Набути навиків такого представлення. Аналіз завдання Завдання: Варіант №25 Матриця А задається однозначно і залежить лише від розмірності даних. 100…001 110…011 ………… 110…011 100…001 Для матриці В: заштрихована область – довільні цілі числа, відмінні від нуля, а не заштрихована область – нулі. Запропонувати та реалізувати локально-рекурсивний алгоритм обчислення виразу:  , де А та В матриці з елементами  та , відповідно(), тобто:  () . Результати виконання роботи: Текст програми з одноразовим присвоюванням: if (radioButton1.Checked) { int oper1 = 0; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { matrC[i, j] = 0; for (int l = 0; l < N; l++) { matrC[i, j]=matrC[i,j]+matrA[i, l] * matrB[l, j]; oper1++; } label3.Text += Convert.ToString(matrC[i, j]) + " "; } label3.Text += Environment.NewLine; } textBox2.Text += oper1; } Рекурсивні рівняння:    j – індекс рекурсії. Локалізований граф залежностей:  Аналітичні оцінки кількості арифметичних операцій та їх порівняння: Під час множення матриць з одноразовим присвоєнням програма потребує багато пам’яті і її виконання вимагає більше часу та арифметичних операцій множення на нуль та додавання до нуля і навпаки. Таким чином складність алгоритму сягає О3 для N розмірності матриць. Якщо матриця має розміри 3x3(NxN) то О3=27 арифетичних операцій для множення двох матриць. Під час оптимізованого множення матриць кількість індексів зменшується через те що не виконується множення на нуль, відповідно програма вимагає менше ресурсів для її виконання кількість арифметичних операцій зменшується майже на половину для N=3, Складність О=15. текст програми, що реалізовує оптимізований локально-рекурсивний алгоритм: if (radioButton2.Checked) { int oper = 0; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { for (int l = 0; l < N; l++) { if (matrA[i, l] == 0 || matrB[l, j] == 0) { continue; } else { matrC[i, j] += matrA[i, l] * matrB[l, j]; oper++; } } label3.Text += Convert.ToString(matrC[i, j]) + " "; } label3.Text += Environment.NewLine; } textBox2.Text += oper; } Результат роботи програми на довільному наборі вхідних даних, для розмірності n≥3:  Висновки: Під час виконання даної лабораторної роботи вивчив можливості паралельного представлення алгоритмів. Набув навиків такого представлення. В результаті виконання обчислень виявилося що оптимізований локально-рекурсивний алгоритм працює швидше та потребує менше ресурсів.
Антиботан аватар за замовчуванням

19.11.2012 18:11

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини